package com.lingxu.module.earlyWarn.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.lingxu.base.system.fileManage.entity.SysFileInfo;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;
import java.util.List;

/**
 * @Title: IssueManage
 * @Package: com.lingxu.module.earlyWarn.entity
 * @Author: ysj闫世杰
 * @Email: 1105324813@qq.com
 * @Date: Created in 2024/1/2 17:40
 * @Description: 问题管理
 * @Version: 1.0.0
 */
@Data
@TableName(value = "T_ISSUE_MANAGE")
public class IssueManage {
    @TableId
    private String id;
    private String modelId;
    private String name;
    private String region;
    private String regionName;
    private String suggestionDept;
    private String suggestionDeptName;
    @DateTimeFormat(pattern ="yyyy-MM-dd HH:mm:ss")
    private Date startDate;
    private String checkdStatus;    //核查状态
    private String launchDept;
    private String launchDeptName;
    private String transferDept;
    private String transferDeptName;
    private String transferRemark;  //转办意见
    private Integer issueNum;
    private String disposalStatus;      //处理状态：待转派、待接收、待审核、已免查、已关闭、已处置、已办结     待处置 处置中 处置中  处置中  已处置 已处置 已处置
    private String isExempt;
    private String issueTag;
    private String isDoubtData;
    @DateTimeFormat(pattern ="yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

    private String issueType;       //问题分类编码
    private String issueRegion;     //问题属地编码
    private String dataFroms;       //数据来源编码

    @DateTimeFormat(pattern ="yyyy-MM-dd HH:mm:ss")
    private Date pushDate;         //推送时间
    private String handleType;      //办理方式编码（1：拟自办:2：流转下级 3.转办）

    @DateTimeFormat(pattern ="yyyy-MM-dd HH:mm:ss")
    private Date handleTime;        //办理时间
    private String handleUser;        //办理人
    private String pushDept;        //推送部门id
    private String pushDeptName;    //推送部门名称

    @DateTimeFormat(pattern ="yyyy-MM-dd HH:mm:ss")
    private Date handleOverTime;    //办理截止时间
    private String handleRemark;    //办理说明

    private String isLeader;        //领导批示 1：是、0：否
    private String leaderInstructions;

    @DateTimeFormat(pattern ="yyyy-MM-dd HH:mm:ss")
    private Date approvalTime;      //审批时间
    private String approvalUser;    //审批人id
    private String approvalUserName;//审批人姓名
    private String approvalStatus;  //审批状态（0：待审批、1：通过、-1：拒绝）
    private String approvalOpinion; //审批意见
    private String approvalContent; //审批批示

    private String backDept;
    private String backDeptName;
    private String backCause;

    /**核查**/
    //核查办理时间
    @DateTimeFormat(pattern ="yyyy-MM-dd HH:mm:ss")
    private Date checkedTime;   //核查办理时间
    private String checkedUser; //核查登记人

    @DateTimeFormat(pattern ="yyyy-MM-dd HH:mm:ss")
    private Date checkedStartTime;  //核查开始时间
    @DateTimeFormat(pattern ="yyyy-MM-dd HH:mm:ss")
    private Date checkedEndTime;    //核查结束时间
    private String checkedResult;   //核查结果
    private String checkedDisposalResult;   //核查处置结果
    private String checkedFeedback;   //核查反馈情况
    private String checkedEconomyLoss;     //经济损失(元)

    @DateTimeFormat(pattern ="yyyy-MM-dd HH:mm:ss")
    private Date checkedApprovalTime;   //核查审批时间
    private String checkedApprovalUser; //核查审批用户ID
    private String checkedApprovalUserName; //核查审批用户姓名
    private String checkedApprovalStatus;   //核查审批状态（0：待审批、1：通过、-1：拒绝）
    private String checkedApprovalOpinion;  //核查审批意见


    /**办结**/
    private String isViolations;    //是否存在违规违纪（1：是，0：否）
    private String isEconomyLoss;   //是否追回资金（1：是，0：否）
    private String money;           //金额
    @DateTimeFormat(pattern ="yyyy-MM-dd HH:mm:ss")
    private Date moneyTime;         //追回资金时间
    private String isCase;          //是否立案（1：是，0：否）
    private String caseinfodetails;        //立案信息详情
    private String casepersonnum;        //立案人数

    private String isTypicalCases;      //是否典型案例（1：是，0：否）
    private String typicalCasesContent; //典型案例内容

    @DateTimeFormat(pattern ="yyyy-MM-dd HH:mm:ss")
    private Date typicalCasesTime;      //典型案例入库时间
    private String isCreateSystem;      //是否建章立制（1：是，0：否）
    private String createsystemdetails;      //建章立制详情
    private String createsystemdetailsnum;      //建章立制详情数量

    //办理结果填写时间（默认生成）
    @DateTimeFormat(pattern ="yyyy-MM-dd HH:mm:ss")
    private Date lastResultTime;

    //办结意见
    private String issueDoneOpinion;

    private String yjxxbm;                  //预警信息编码
    private String jdmxbm;                  //模型编码
    private String earlywarntype;           //预警类型
    @DateTimeFormat(pattern ="yyyy-MM-dd HH:mm:ss")
    private Date casetime;                  //立案统计时间
    private String typicalCasesTitle;       //典型案例标题
    private String typicalCasesAnnex;       //典型案例附件
    private String runid;       //问题运行id集合
    private String runtime;     //问题运行时间

    private String sfcfzb;     //是否拆分转办 0 是 1否 2拆分后主问题逻辑删除标识
    private String cfzbids;     //拆分转办id集合
    private String zbssdq;     //转办所属地区
    private String cfzbzid;     //转办拆分前问题主id

    @TableField(exist = false)
    private List<SysFileInfo> fileInfoList;

    @TableField(exist = false)
    private String cared;

}

